//
// Created by zhupi on 2024/10/1.
//

#include "tree_item_icon_ctrl.h"

TreeItemIconCtrl &TreeItemIconCtrl::GetIns() {
    static TreeItemIconCtrl ins;
    return ins;
}

void TreeItemIconCtrl::Init() {
    // 这里将每种类型 和对应的图标注册到map中
    iconMap_["TypeRoot"]    = QIcon("D:/work/icon/3D.png"); // 根目录
    iconMap_["TypeChild"]   = QIcon("D:/work/icon/mid.png"); // 子目录
    iconMap_["TypeLeaf"]    = QIcon("D:/work/icon/leaf.png"); // 底层目录
}

bool TreeItemIconCtrl::GetIcon(const std::string &type, QIcon &icon)
{
    if (!iconMap_.count(type)) {
        // [] error connet find type icon
        return false;
    }
    icon = iconMap_[type];
    return true;
}
